﻿using System;

namespace Narwhunderful.Aphelia.Framework
{

    public class DisposableComponent : IDisposable
    {

        public DisposableComponent()
            : base()
        {
        }

        #region IDisposableComponent

        public void Dispose()
        {
            this.Dispose(true);
            GC.SuppressFinalize(this);
        }

        protected virtual void Dispose(bool disposing)
        {
        }

        ~DisposableComponent()
        {
            this.Dispose(false);
        }

        #endregion

    }

}
